package com.zp.system.entity.bo;

import com.zp.common.core.entity.BaseEntity;
import com.zp.common.core.validate.AddGroup;
import com.zp.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 自定义服务信息业务对象
 *
 * @author zhang peng
 * @date 2022-12-11
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class SysRoleGroupBo extends BaseEntity {

    /**
     * 自定义服务主键
     */
    @NotBlank(message = "自定义服务主键不能为空", groups = {EditGroup.class})
    private String roleGroupId;

    /**
     * 自定义服务
     */
    @NotBlank(message = "自定义服务不能为空", groups = {AddGroup.class, EditGroup.class})
    private String roleGroupName;

    /**
     * 自定义服务权限字符串
     */
    @NotBlank(message = "自定义服务权限字符串不能为空", groups = {AddGroup.class, EditGroup.class})
    private String roleKey;

    /**
     * 显示顺序
     */
    @NotNull(message = "显示顺序不能为空", groups = {AddGroup.class, EditGroup.class})
    private Long roleSort;

    /**
     * 自定义服务状态（0正常 1停用）
     */
    @NotBlank(message = "自定义服务状态（0正常 1停用）不能为空", groups = {AddGroup.class, EditGroup.class})
    private String status;

    /**
     * 备注
     */
    private String remark;

    /**
     * 菜单组
     */
//    @TableField(exist = false)
    private String[] menuIds;

    private Boolean menuCheckStrictly;


    /**
     * 机构id
     */
    private String orgId;
}
